package com.spirng.leetcode.day10;

public class Test63 {
    public static void main(String[] args) {
        Test63 test63 = new Test63();
        test63.uniquePathsWithObstacles(new int[][]{{0,0},{1,0}});
    }
    public int uniquePathsWithObstacles(int[][] obstacleGrid) {
        int res=0;
        int res1=0;
        int dp[][]=new int[obstacleGrid.length][obstacleGrid[0].length];
        for (int i = 0; i < dp.length; i++) {
            if(obstacleGrid[i][0]==1){
                dp[i][0]=0;
                res++;
                continue;
            }
            if(res>=1) dp[i][0]=0;
            else dp[i][0]=1;
        }
        for (int i = 0; i < dp[0].length; i++) {
            if(obstacleGrid[0][i]==1){
                dp[0][i]=0;
                res1++;
                continue;
            }
            if(res1>=1) dp[0][i]=0;
           else dp[0][i]=1;
        }
        for (int i = 1; i < obstacleGrid.length; i++) {
            for (int j = 1; j < obstacleGrid[0].length; j++) {
                if(obstacleGrid[i][j]==1){
                    dp[i][j]=0;
                    continue;
                }
                dp[i][j]=dp[i-1][j]+dp[i][j-1];
                System.out.println(dp[i][j]);
            }
        }
        return dp[dp.length-1][dp[0].length-1];
    }
}
